오늘 한 일
- Android 프로젝트
- Flutter 프로젝트
Android 개발
이중 RecyclerView 구현 설계
Outer List: 날짜 =
[오늘, 어제, 2일전, 3일전, … , 5일전]
Inner List: 시간&done =[ O, X, O ]
⇒ 지금 생각해보니 왜 이중으로 해야하는지 모르겠다
DB에서 전달되는 데이터
[오늘, 아침, O], [오늘, 저녁, X],
[어제, 아침 O], [어제, 저녁, O], [어제, 자기전, O]
…
이걸 생각할 때, 날짜별로 List를 쏴줄 수 있다.
데이터 전송방식
List 일괄화
[
[오늘, 아침, O], [오늘, 저녁, X],
[어제, 아침 O], [어제, 저녁, O], [어제, 자기전, O],
…
]⇒ 시간대 정보도 같이 받았으면 좋겠다.
DB에서 아침, 저녁, 자기전이라는 정보 저장, 띄울 때 보내주기→ 이렇게 한 다음에 RecyclerView 2개 쓰는것도 괜찮
2. List 일괄화 + 포맷화
```
[
[O, NONE, X, NONE],
[O, NONE, O, O]
…
]
```
⇒ 어차피 index = 날짜를 의미하므로 불필요한 정보들은 제거
### 레이아웃 배치방식
RecyclerView - LinearLayout이 맞나?
RecyclerView로 Row들이 완성됨
Row 안에선 LinearLayout으로.. but 가장 오래된 Row만 우밀착, 나머지 Row는 좌밀착⇒ 안됨
왜냐하면 중간에 시간대가 바뀌면 그 바뀐 정보를 확인못함
→ 받은 시간대정보와 Done을 매칭해서 배치하기
- RecyclerView - LinearLayout 넘겨준 시간대 정보를 토대로,
List 가공 = 자기전이 없다면 List[][3]을 모두 제거 → RecyclerView로 구현 나머지 InnerList와 Done을 매칭한다음, LinearLayout으로 배치 → Data를 기반으로 LinearLayout을 런타임 초기화하는 방법?
Kotlin Collection.filter() 사용, 원하는 Collection 남기기
원하는 크기로 RecyclerView’s item height 결정
→ Adapter에서 View에대해 다루는 onCreateViewHolder()에서 결정가능
ImageView를 Width 길이에 맞춰 Height 조절
→ android:adjustViewBounds="true"
width: match_parent ← 정해진 width
height: wrap_content
Flutter 웹뷰앱
iOS 실기기 빌드 안되는 것 .p12 인증서를 쓰지말고 .p8 인증키만 쓰도록 트라이
안드로이드 앱링크 변경 후 테스트 완료
마무리
1__ 운전연수
오늘도 어제와 마찬가지로 경기도 광주까지 운전했다
돌아오는 길에 남한산성 코스 타면서 핸들링연습, 남한산성이 좋은 드라이브 코스임을 알게됨
추가로 새벽에 주유할겸 차 끌고 나가서 집 -> 송파구청사거리 -> 삼전동주유소 -> 잠실사거리 -> 집앞 -> 잠실중학교 -> 갤러리아팰리스 앞 유턴 -> 집앞 -> 잠실나루역 -> 집 코스로 집 근처 지리를 좀 익혀놨다 이후 집에서 주차연습을 하는데 너무 어렵다 차체와 차폭에 대한 감이 없고 차가 일직선이 되는지 사이드미러로 잘 안보여서 힘든 것 같은데 연습좀 많이 해야겠다